草庐IT

iOS 推送风格 segue 过渡

全部标签

javascript - 如何防止 iOS 5 中 touchmove 事件的默认行为?

我有一个基于Web的应用程序,其中包含一个用户可以用手指上下滚动的组件。我使用事件的preventDefault方法来防止触摸移动在iOS设备上移动整个屏幕的默认行为。不幸的是,这在我今天早上刚升级到的iOS5中似乎不再有效。我不得不假设这在iOS5中的做法有所不同,但我还没有找到提供说明的资源。更新#1:我无法找到我的特定问题的答案,但我可以稍微调整我的代码以使用-webkit-overflow-scrolling样式(设置到“触摸”的值)并实现时髦的惯性滚动功能(其中内容滚动速度更快,具体取决于您的滑动速度,如果它触及边界,将“橡皮筋弹回”。看起来很酷...更新#2:我现在有另一个

javascript - 检测 iPhone 5 及其以下的任何 iOS 设备

Aquestion在SO上被问及iPhone4用户代理和iOS5.0用户代理。我使用以下方法检测不同的移动设备、视口(viewport)和屏幕。我希望能够区分iPhone5和所有其他iOS设备。据我所知,我用来检测iOS5.0用户代理variPhone5的行也适用于任何运行iOS5.0的iOS设备,所以从技术上讲它是不正确的。varpixelRatio=window.devicePixelRatio||1;varviewport={width:window.innerWidth,height:window.innerHeight};varscreen={width:window.scr

javascript - 从 DOM 中删除同级元素时创建 block 元素的平滑过渡

我有一个容器,其工作方式类似于macos中的通知-元素被添加到队列并在特定超时后删除。这很好用,但有一个不和谐的视觉副作用。当它们从DOM中移除时,UI会出现参差不齐的更新,因为堆栈中的下一个元素会填充前一个元素所造成的空白。我希望堆栈中下面的元素能够顺利地向上移动到该空间,最好使用css3,但添加一个transition:all0.5sease-in-out到.notice当其兄弟被移除时,类对该对象没有影响。最小的JS交互:$('#add').click(function(e){e.preventDefault();$('#container').append('Notice#')

JavaScript 警报卡住 iOS 浏览器

我在jquery-mobile中开发webapp时遇到了一些奇怪的错误。当我提示警报时,如果我触摸页面的某些输入,iOSSafari和Chrome将完全卡住,我只能使用任务管理器关闭它们。我很困惑是苹果的错还是我的错。一些代码:$('.checkout-comprar-button').click(function(){alert("hola!!!");});这是事件的div:这是输入之一:"name=""id="checkout-num-tarjeta"maxlength="30"/>显示警报后,如果我想聚焦某些输入,浏览器会卡住。当我强行关闭Safari时,这是控制台给我的消息::

javascript - 如果 CSS3 过渡不存在,使用 Modernizr 和 jQuery 来制作动画

如果不支持CSS3,有没有办法结合使用Modernizr和jQuery来启用类似于转换的功能?我目前正在做的是这样的......ThisdivchangesbothwidthandheightonhoverCSS是.hoverable{height:100px;width:2000px;transition:height.5s,width.5s;}.hoverable:hover{height:200px;width:100px;}如果不支持CSS3转换,我目前只是使用Modernizr使div默认处于悬停状态。如果不支持CSS3,有没有办法使用Modernizr触发jQuery动画?

javascript - 我可以将 socket.io 事件监听器分成不同的模块吗?

我正在处理超过15个不同的套接字事件,我想在与这些事件相关的模块中管理某些socket.io事件。例如,我想让名为login.js的文件处理login套接字事件,让名为register.js的文件处理注册套接字事件。index.js:socket.on("connection",function(client){console.log("Clientconnectedtosocket!");client.on("login",function(data){validate(data){socket.sockets.emit("login_success",data);}});clien

javascript - 如何将 socket.io(在 nodejs 中)的事件处理程序绑定(bind)到我自己的范围?

我在我的nodejs服务器中使用“socket.io”。有没有办法在我的类/模块(在浏览器中)的范围内运行已注册的事件函数?...init:function(){this.socket=newio.Socket('localhost:3000');//connecttolocalhostpresentlythis.socket.on('connect',this.myConnect);},myConnect:function(){//"this.socket"and"this.f"areunknown//this.socket.send({});//this.f();},f:funct

javascript - 根据 Google JavaScript 风格指南的 block 内函数声明

根据GoogleJavaScript风格指南,函数声明不应在block内声明,因为这不是ECMAScript的一部分。但是,我并不完全清楚什么才算是block。具体来说,我有一个构造函数,我想在该构造函数的范围内定义一个函数。这算作一个block中的函数吗,因为它在一组{}中?如果是这样,是否意味着每个函数声明都必须是全局的?一些好的措施代码:错误(?)functionConstructor(){functionShout(){alert('THEBESTUXISINALLCAPS.');}}右(?)functionConstructor(){varShout=function(){a

javascript - TypeScript 和 Socket.io

我想在我的Typescript项目中使用socket.io,但我只找到了服务器端typescript的.d.ts文件。这是一个很好的例子:https://github.com/soywiz/typescript-node-definitions/blob/master/socket.io.d.ts它展示了如何将TypeScript与Socket.io结合使用。但是在客户端它使用JavaScript。我需要的是用于客户端TypeScript的.d.ts文件,它可以解决此行的错误消息:varsocket=io.connect("localhost");Thename"io"doesnote

javascript - 套接字IO : Client side 'connect' event not firing when socket is already setup

我在浏览器控制台中使用socketio设置了一个websocketsocket.socket.connected返回真值。但是如果我再添加:socket.on('connect',function(){console.log('some');});没有任何反应,即“some”没有被记录。这是来自官方的socket-io页面:varsocket=io.connect();socket.on('connect',function(){socket.emit('ferret','tobi',function(data){console.log(data);});});我想这段代码可以正常工作